home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_200 / 292_03 / lkihx.c < prev    next >
C/C++ Source or Header  |  1990-07-16  |  774b  |  47 lines

  1. /* lkihx.c */
  2.  
  3. /*
  4.  * (C) Copyright 1989,1990
  5.  * All Rights Reserved
  6.  *
  7.  * Alan R. Baldwin
  8.  * 721 Berkeley St.
  9.  * Kent, Ohio  44240
  10.  */
  11.  
  12. #include <stdio.h>
  13. #include <string.h>
  14. #include <alloc.h>
  15. #include "aslink.h"
  16.  
  17. VOID
  18. ihx(i)
  19. {
  20.     register addr_t chksum;
  21.  
  22.     if (i) {
  23.         if (hilo == 0) {
  24.             chksum = rtval[0];
  25.             rtval[0] = rtval[1];
  26.             rtval[1] = chksum;
  27.         }
  28.         for (i = 0, chksum = -2; i < rtcnt; i++) {
  29.             if (rtflg[i])
  30.                 chksum++;
  31.         }
  32.         fprintf(ofp, ":%02X", chksum);
  33.         for (i = 0; i < rtcnt ; i++) {
  34.             if (rtflg[i]) {
  35.                 fprintf(ofp, "%02X", rtval[i]);
  36.                 chksum += rtval[i];
  37.             }
  38.             if (i == 1) {
  39.                 fprintf(ofp, "00");
  40.             }
  41.         }
  42.         fprintf(ofp, "%02X\n", (-chksum) & 0xff);
  43.     } else {
  44.         fprintf(ofp, ":00000001FF\n");
  45.     }
  46. }
  47.